Transcoding is a key technology that is widely used in the telecommunications and Media and Entertainment domains. Trancoding may be used for converting visual media from one type to another, e.g., from MPEG to a GIF format, in order to support rendering on a legacy device. The transcoding may also be used for converting audio media from one type to another, e.g., from a polyphonic ring-tone to a simpler ring-tone which is non polyphonic, in order to support a legacy device. Additionally, transcoding may be used to provide the ability to support a baselined piece of content and use this to drive conversion into different formats by using standard codec based conversion algorithms.
In typical commercial deployments, transcoding engines operate in two primary modes, e.g., offline and online. In the offline mode, all the content that has to be transcoded is performed in an offline mode and made available to the user. As an example, an offline mode may include converting a base polyphone ringtone into 32 different targets of tones that can be rendered on 32 types of handsets that is supported by the network carrier. With this approach, the runtime call flow is less computationally intensive, but there is a need to account for and possibly accommodate for extra storage to store transcoded target state formats for a single baselined piece of content. Also, in legacy devices, the device must first know the content, actively search for an appropriate codec to play the content and then download the codec prior to playing. This is a time consuming and processing intensive process.
In the online mode, conversion happens as part of the service call flow. With respect to online transcoding, while the services call flow is more computationally intensive, there is less storage capacity typically required by the network carrier. This is because most online deployment models transcode content on the fly. Also, as noted above, the device must first know the content, actively search for an appropriate codec to play the content and then download the codec prior to playing. This is a time consuming and processing intensive process.